package com.ta.gulimall.product.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ta.gulimall.product.view.entity.ProductAttrValueEntity;
import com.ta.gulimall.product.view.pto.SpuDto;
import com.ta.gulimall.product.view.vo.BaseAttrs;
import com.ta.gulimall.product.view.vo.SpuGroupBaseAttrVo;

import java.util.List;

/**
 * spu属性值
 *
 * @author tuao
 * @email tuaoo@gmail.com
 * @date 2022-10-27 16:31:57
 */
public interface ProductAttrValueService extends IService<ProductAttrValueEntity> {


    /**
     * 保存spu基本属性集合
     * @param spuDto
     * @param baseAttrs
     */
    void saveProductAttrs(SpuDto spuDto, List<BaseAttrs> baseAttrs);

    /**
     * 回显spu属性信息
     * @param spuId
     */
    List<ProductAttrValueEntity> listSpuAttr(Long spuId);

    /**
     * 修改sku属性值
     * @param spuId
     * @param entities
     */
    void updateSpuAttr(Long spuId, List<ProductAttrValueEntity> entities);

    /**
     * 查询spu商品下的分组基本属性信息
     * @param spuId
     * @param catalogId
     * @return
     */
    List<SpuGroupBaseAttrVo> listBaseAttrsWithGroup(Long spuId, Long catalogId);
}

